package com.zhuiYun.project.api.shoppingcart.model;

import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiOperation;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @ClassName: ShoppingCartModel
 * @descriptions: 购物车Model
 * @Author: zq
 * @Date 2023/4/5 21:02
 */
@ApiOperation("购物车模型类")
@Data
public class ShoppingCartModel implements Serializable {

    @ApiModelProperty("主键id新增时无需填写")
    private Integer id;

    /**
     * 加入购物车时间
     */
    @NotBlank(message = "加入购物车时间为空")
    @ApiModelProperty("加入购物车时间")
    private Date addToCartDate;

    /**
     * 购买人id
     */
    @NotBlank(message = "购买人id不能为空")
    @ApiModelProperty("购买人id")
    private Integer userId;

    /**
     * 商品id
     */
    @NotBlank(message = "商品id不能为空")
    @ApiModelProperty("商品id")
    private Integer commodityId;

    /**
     * 商家名称
     */
    @NotBlank(message = "商家名称不能为空")
    @ApiModelProperty("商家名称")
    private String businessName;

    /**
     * 商品图片
     */
    @ApiModelProperty("商家图片")
    private String commodityImages;

    /**
     * 商品名称
     */
    @ApiModelProperty("商品名称")
    private String commodityName;

    /**
     * 商品描述
     */
    @ApiModelProperty("商品描述")
    private String commodityDescribe;
    /**
     * 商品单价
     */
    @NotBlank(message = "商品单价不能为空")
    @ApiModelProperty("商品单价")
    private BigDecimal commodityPrice;

    /**
     * 商品总价
     */
    @NotBlank(message = "商品单价不能为空")
    @ApiModelProperty("商品单价")
    private BigDecimal totalPrices;

    /**
     * 退换货政策
     */
    @ApiModelProperty("退换货政策")
    private String returnAndExchangePolicy;

    /**
     * 商品数量
     */
    @NotBlank(message = "商品数量不能为空")
    @ApiModelProperty("商品数量")
    private Integer number;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private Date createTime;

    /**
     * 修改时间
     */
    @ApiModelProperty("修改时间")
    private Date updateTime;

    /**
     * 逻辑删除
     */
    @ApiModelProperty("逻辑删除")
    private Integer delFlag;

    /**
     * 商品属性
     */
    @ApiModelProperty("商品属性")
    private String commoditySpec;

    /**
     * 是DIY还是商品（0为不是 1为是）
     */
    @ApiModelProperty("类型")
    private Integer isNoDiy;

    private Integer diyId;

    private String flag;
}
